html {
    scroll-behavior: smooth;
}
body{
    background-color: #FFFDF2;
    font-family: monaco;
}
nav{
    background-color: #FFFDF2;
    position: sticky;
    top: 0;
    box-shadow: 
        0 4px 6px -1px rgba(0, 0, 0, 0.1),
        0 2px 4px -2px rgba(0, 0, 0, 0.06);
    z-index: 1000;
}
#logo{
    width: 40%;
    display: inline-block;
}
#logo-img{
    border: none;
    border-radius: 50%;
    margin-left: 5%;
    width: 5vw;
    height: 5vw;
    vertical-align: middle;
}
#logo-name{
    width: 60%;
    font-size: 150%;
    display: inline-block;
    font-weight: 100%;
    margin-left: 2%;
    margin-top: 2%;
    vertical-align: middle;
}
#nav-bar{
    display: inline-block;
    width: 55%;
}
.nav-items{
    font-size: 110%;
    text-decoration: none;
    color: black;
    display: inline-block;
    margin: 4%;
}
nav{
    margin-bottom: 4%;
}
#intro{
    border: solid black;
    border-radius: 10px;
    padding: 2% 4% 2% 4%;
    width: 90vw;
    margin:auto
}
#heading>p{
    font-size: 110%;
    font-weight: bold;
}
#heading>h2{
    font-size: 300%;
    margin-top: 0%;
}
#heading>h2>span{
    color: indigo;
    text-decoration: underline;
}
#bullet{
    font-size: 20px;
    text-align: center;
}
#bullet>span:nth-of-type(1)::before{
    content: "\2022";
    color: green;
    font-size: 1.2em;
    margin-right: 0.5em;
    display: inline-block;
}
#bullet>span:nth-of-type(2)::before{
    content: "\2022";
    color: blue;
    font-size: 1.2em;
    margin-right: 0.5em;
    display: inline-block;
}#bullet>span:nth-of-type(3)::before{
    content: "\2022";
    color: red;
    font-size: 1.2em;
    margin-right: 0.5em;
    display: inline-block;
}#bullet>span:nth-of-type(4)::before{
    content: "\2022";
    color: pink;
    font-size: 1.2em;
    margin-right: 0.5em;
    display: inline-block;
}
#buttons{
    text-align: center;
    margin-top: 30px;
    padding: 10px;
    vertical-align: middle;
}
.but1{
    display: inline-block;
    margin-left: 1.5%;
}
.prof-img{
    width: 42px;
    height: 42px;
    padding: 10px;
    border: 1.5px solid black;
    border-radius: 50%;
    margin: auto;
    overflow: visible;
    display: inline-block;
    vertical-align: middle;
    background-size: 42px;
    background-repeat: no-repeat;
    background-position: center;
}
#github{
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1naXRodWItaWNvbiBsdWNpZGUtZ2l0aHViIj48cGF0aCBkPSJNMTUgMjJ2LTRhNC44IDQuOCAwIDAgMC0xLTMuNWMzIDAgNi0yIDYtNS41LjA4LTEuMjUtLjI3LTIuNDgtMS0zLjUuMjgtMS4xNS4yOC0yLjM1IDAtMy41IDAgMC0xIDAtMyAxLjUtMi42NC0uNS01LjM2LS41LTggMEM2IDIgNSAyIDUgMmMtLjMgMS4xNS0uMyAyLjM1IDAgMy41QTUuNDAzIDUuNDAzIDAgMCAwIDQgOWMwIDMuNSAzIDUuNSA2IDUuNS0uMzkuNDktLjY4IDEuMDUtLjg1IDEuNjUtLjE3LjYtLjIyIDEuMjMtLjE1IDEuODV2NCIvPjxwYXRoIGQ9Ik05IDE4Yy00LjUxIDItNS0yLTctMiIvPjwvc3ZnPg==");
}
#github:hover{
    transition: 0.3s;
    background-color: black;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmZmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1naXRodWItaWNvbiBsdWNpZGUtZ2l0aHViIj48cGF0aCBkPSJNMTUgMjJ2LTRhNC44IDQuOCAwIDAgMC0xLTMuNWMzIDAgNi0yIDYtNS41LjA4LTEuMjUtLjI3LTIuNDgtMS0zLjUuMjgtMS4xNS4yOC0yLjM1IDAtMy41IDAgMC0xIDAtMyAxLjUtMi42NC0uNS01LjM2LS41LTggMEM2IDIgNSAyIDUgMmMtLjMgMS4xNS0uMyAyLjM1IDAgMy41QTUuNDAzIDUuNDAzIDAgMCAwIDQgOWMwIDMuNSAzIDUuNSA2IDUuNS0uMzkuNDktLjY4IDEuMDUtLjg1IDEuNjUtLjE3LjYtLjIyIDEuMjMtLjE1IDEuODV2NCIvPjxwYXRoIGQ9Ik05IDE4Yy00LjUxIDItNS0yLTctMiIvPjwvc3ZnPg=="); 
}
#github:active{
    transition: 0.3s;
    width: 35px;
    height: 35px;
}
#linkedin{
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1saW5rZWRpbi1pY29uIGx1Y2lkZS1saW5rZWRpbiI+PHBhdGggZD0iTTE2IDhhNiA2IDAgMCAxIDYgNnY3aC00di03YTIgMiAwIDAgMC0yLTIgMiAyIDAgMCAwLTIgMnY3aC00di03YTYgNiAwIDAgMSA2LTZ6Ii8+PHJlY3Qgd2lkdGg9IjQiIGhlaWdodD0iMTIiIHg9IjIiIHk9IjkiLz48Y2lyY2xlIGN4PSI0IiBjeT0iNCIgcj0iMiIvPjwvc3ZnPg==");
}
#linkedin:hover{
    transition: 0.3s;
    background-color: black;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmZmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1saW5rZWRpbi1pY29uIGx1Y2lkZS1saW5rZWRpbiI+PHBhdGggZD0iTTE2IDhhNiA2IDAgMCAxIDYgNnY3aC00di03YTIgMiAwIDAgMC0yLTIgMiAyIDAgMCAwLTIgMnY3aC00di03YTYgNiAwIDAgMSA2LTZ6Ii8+PHJlY3Qgd2lkdGg9IjQiIGhlaWdodD0iMTIiIHg9IjIiIHk9IjkiLz48Y2lyY2xlIGN4PSI0IiBjeT0iNCIgcj0iMiIvPjwvc3ZnPg==");
}
#linkedin:active{
    transition: 0.3s;
    width: 35px;
    height: 35px;
}
#connect-button{
    text-align: center;
    display: inline-block;
    margin-top: 0px;
    border: solid black; 
    border-radius: 10px;
    background-color: black;
    padding: 1%;
    text-decoration: none;
    font-size: 1.3rem;
    font-weight: 900;
    color: white;
    width: 12vw;
    vertical-align: middle;
    overflow: scroll;
}
#connect-button:active{
    transition: 0.5s;
    background-color: #FFFDF2;
    color: black;
}
#code {
    width: 80%;
    border: solid #272a36;
    background-color: #272a36;
    border-radius: 10px;
    margin: auto;
    padding: 1% 3%;
    font-family: 'Fira Code', monospace;
    font-size: 16px;
    color: #f8f8f2;
    font-feature-settings: "liga" 1;
    height: 1.5em; 
    overflow: hidden; 
    animation: expand-code-box 0.5s forwards; 
    animation-delay: 2s;
    vertical-align: middle;
    overflow-y: scroll;
    overflow-x: hidden;
    height: 100px;
}
.new-text {
    display: block; 
    margin: 0; 
    padding: 2px 0; 
}

#code-lines-wrapper > .new-text:nth-of-type(1) { color: #ff6602; }
#code-lines-wrapper > .new-text:nth-of-type(2) { color: #50fa7b; }
#code-lines-wrapper > .new-text:nth-of-type(3) { color: #159fff; }
#code-lines-wrapper > .new-text:nth-of-type(4) { color: #9933cc; }



#about {
    padding: 4% 8%;
    margin-top: 50px;
}

.section-heading {
    text-align: center;
    font-size: 2.5rem;
    font-weight: bold;
    margin-bottom: 40px;
    color: #333;
}

.section-heading .tag {
    color: indigo;
    font-weight: 700;
}

#about-code-container pre {
    background-color: #282a36;
    padding: 2rem;
    border-radius: 10px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    border: 1px solid #44475a;
    max-width: 900px;
    margin: auto;
    overflow-x: auto;
}

#about-code-container code {
    font-family: 'Fira Code', monospace;
    font-size: 1rem;
    line-height: 1.6;
    color: #f8f8f2;
}

/* --- Syntax Highlighting --- */
#about-code-container .comment {
    color: #6272a4;
}

#about-code-container .keyword {
    color: #ff79c6;
}

#about-code-container .class-name {
    color: #8be9fd;
}

#about-code-container .function {
    color: #50fa7b;
}

#about-code-container .parameter {
    color: #ffb86c;
}

#about-code-container .string {
    color: #f1fa8c;
}
#skills{
    margin-bottom: 16vh;
}
.card{
    border: solid #e0e0e0;
    border-radius: 10px;
    display: inline-block;
    width: 25vw;
    text-align: center;
    padding: 2vw;
    margin-left: 2.5vw;
}
.card>h3{
    text-align: center;
}
svg{
    margin: 1.5vw;
    width: 4vw;
    height: 4vw;
}
#project{
    margin-bottom: 16vh;
    text-align: center;
}
.project-card{
    border: solid #e0e0e0;
    border-radius: 10px;
    width: 35vw;
    text-align: center;
    padding: 2vw;
    margin: auto;
    margin-bottom: 16vh;
}
.project-card>a{
    text-decoration: none;
}
.project-card>a>div{
    border: solid black;
    background-color: black;
    border-radius: 10px;
    overflow: hidden;
    color: white;
}
.project-card>a>div>img{
    width: 100%;
    border-bottom: solid black;
}
#experience{
    margin-bottom: 16vh;  
    text-align: center;
}
.ex-card{
    vertical-align: middle;
    display: inline-block;
    border: solid #e0e0e0;
    border-radius: 10px;
    margin: auto;
    width: 40%;
    height: 100%;
    margin-bottom: 5%;
}
.ex-card>img{
    display: block;
    margin: auto;
    margin-bottom: 4vh;
}
#github-cal{
    padding: 5%;
    width: 60%;
}
#github-cal>script{
    width: 80%;
}
#cf{
    width: 30%;
}
#cf>img{
    width: 80%;
}
#contact{
    margin: auto;
}
#contact-head{
    text-align: center;
}
.contact-card{
    margin-left: 10vw;
    vertical-align: middle;
    text-decoration: none;
    margin: auto;
    border-radius: 10px;
    width: 40%;
    padding: 2vw;
    display: inline-block;
}
.contact-icon{
    text-decoration: none;
    display: block;
    margin-bottom: 3vh;
}
.contact-icon>img{
    display: inline-block;
    vertical-align: middle;
}
.contact-icon>div{
    display: inline-block;
    vertical-align: middle;
}
.contact-icon>div>p:nth-of-type(1){
    font-size: 1vw;
    margin: 0;
}
.contact-icon>div>p:nth-of-type(2){
    font-size: 0.8vw;
    margin: 0;
}
form{
    border: solid #e0e0e0;
    vertical-align: middle;
    border-radius: 10px;
    padding: 2vw;
}
label{
    display: block;
    margin-bottom: 1vh;
}
input{
    height: 4vh;
    background-color: #fffdf2;
    width: 97%;
    border-radius: 10px;
    border: 2px solid #e0e0e0;
    font-size: 2vh;
    padding-left: 2vh;
    margin-bottom: 3vh;
}
textarea{
    background-color: #fffdf2;
    width: 97%;
    border-radius: 10px;
    border: 2px solid #e0e0e0;
    font-size: 2vh;
    padding-left: 2vh;
    margin-bottom: 3vh;
    padding-top: 1vh;
}
button{
    height: 6vh;
    background-color: #51fa7a;
    width: 101%;
    border-radius: 10px;
    border: 2px solid #51fa7a;
    font-size: 2vh;
}
footer{
    text-align: center;
    font-size: 1.5vh;
}
hr{
    width: 60%;
}
