*, 
*:before, 
*:after{
    box-sizing: border-box;
}
html {
    scroll-behavior: smooth;
}
body{
    margin: 0;
    padding:0;
    /* background-image: linear-gradient(#232323, #232323, #DFAEFF, #FCEBD2); */
    background-color: rgb(244, 247, 249);
    font-family: "Afacad Flux", serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-variation-settings: "slnt" 0;
}
h1{
    font-family: "Spicy Rice", serif;
    font-size: 6rem;
    margin-top: 15rem;
    margin-left: 25rem;
    color: #4B4D96;
}
h2{
    color: #4B4D96;
    font-family: "Spicy Rice", serif;
}
p{
    color: #232323;
    font-size: 16px;
    font-weight: 500;
}
/* Hamburger menu - function */
.toggle img{
    width: 60px;
    height: 60px;
    position: fixed;
    top: 31px;
    left: 37px;
    z-index: 1;

}
#menuToggle {
    display: block;
    /* You can also use relative/absolute here if you want to stay on the top */
    position: fixed;
    top: 50px;
    left: 50px;

    z-index: 1;

    -webkit-user-select: none;
    user-select: none;
}

#menuToggle a {
    text-decoration: none;
    color: #fdfdfd;

    transition: color 0.3s ease;
}

#menuToggle input {
    display: block;
    width: 40px;
    height: 32px;
    position: absolute;
    top: -7px;
    left: -5px;

    cursor: pointer;

    opacity: 0; /* hide this */
    z-index: 2; /* and place it over the hamburger */

    -webkit-touch-callout: none;
}

/*
* Just a quick hamburger
*/
#menuToggle span {
    display: block;
    width: 33px;
    height: 4px;
    margin-bottom: 5px;
    position: relative;

    background: #fdfdfd;
    border-radius: 3px;

    z-index: 1;

    transform-origin: 4px 0px;

    transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
                background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
                opacity 0.55s ease;
}

#menuToggle span:first-child {
    transform-origin: 0% 0%;
}

#menuToggle span:nth-last-child(2) {
    transform-origin: 0% 100%;
}

/* 
* Transform all the slices of hamburger
* into a crossmark.
*/
#menuToggle input:checked ~ span {
    opacity: 1;
    transform: rotate(45deg) translate(-2px, -1px);
    background: #fdfdfd;
}

/*
* But let's hide the middle one.
*/
#menuToggle input:checked ~ span:nth-last-child(3){
    opacity: 0;
    transform: rotate(0deg) scale(0.2, 0.2);
}

/*
* Ohyeah and the last one should go the other direction
*/
#menuToggle input:checked ~ span:nth-last-child(2) {
    transform: rotate(-45deg) translate(0, -1px);
}

/*
* Make this absolute positioned
* at the top left of the screen
*/
#menu {
    font-family: "Spicy Rice", serif;
    border-bottom-right-radius: 2rem;
    position: absolute;
    max-width: 250px;
    width: 100vw;
    max-height: 100vh;
    margin: -100px 0 0 -50px;
    padding: 50px;
    padding-top: 125px;
    box-sizing: border-box;
    overflow-y: auto;
    background: #4B4D96;
    list-style-type: none;
    -webkit-font-smoothing: antialiased;
    /* to stop flickering of text in safari */

    transform-origin: 0% 0%;
    transform: translate(-100%, 0);

    transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
    box-shadow: 0 0 15px #10112050;
}

#menu li {
    padding: 10px 0;
    font-size: 22px;
}

#menu li label {
    cursor: pointer;
}

/*
* And let's slide it in from the left
*/
#menuToggle input:checked ~ ul {
    transform: none;
}
/* Menu styling - ends */


/* NAV STYLES */
nav a{
    justify-content: flex-end;
    line-height: 3rem;
    border-radius: 3px;
    /* padding: 10px; */
    text-decoration: none;
    font-size: 20px;
    font-family: 'Spicy Rice';
    color: #4B4D96;
}
nav {
    display: flex;
    z-index: 3000;
    justify-content:space-between;
    position: fixed;
    top: 0;
    right: 0;
    width: 30%;
    /* background-color: rgba(0, 0, 0, 0.8); */
    padding: 10px;
    transition: transform 0.3s ease-in-out;
}
a:hover{
    text-decoration: overline;
    text-shadow: 2px 2px 4px #dbdeff;
    color: #4B4D96;
}
nav.hidden {
    transform: translateY(-100%);
}


main{
    height: auto;
    margin-top: 50px;
    overflow: hidden;
}
main section{
    padding: 30px;
    /* height: 300px; */
}
.home{
    height: 100vh;
        display: grid;
    place-items: center;
    margin-bottom: 2rem;
    text-align: center;
}

.home #intro{
    width: 55rem;
    place-items: center;
    /* margin-top: 7rem; */
}
/* #home{
    height: 960px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #172621;
} */
#caption{
    margin-top: 8rem;
}
h3{
    font-family: "Afacad Flux", serif;
    font-weight: normal;
    font-style: normal;
    color: #a1a3da;
}

#projects{
    height: auto;
    display: grid;
    place-items: center;
    color: #DFAEFF;
    
    margin-bottom: 5rem;
}
#pieces a{
    text-decoration: none;
    /* color: #dad4c6; */
}
#pieces{
    grid-gap: 20px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    height: auto;
    /* font-weight: 500; */
    font-size: 20px;
}
/* .webApp img{
    width: 18.8rem; 
    height: 13rem; 
    border-radius: 10px 10px 0px 0px;
} */
/* .swift img{
    width: 18.8rem; 
    height: 13rem; 
    border-radius: 10px 10px 0px 0px;
} */
.item-heading h2{
    font-family: 'Spicy Rice';
    font-size: 2rem;
    color: #fdfdfd;
    margin-top: 1.5rem;
    text-align: center;
}
.item-heading p{
    color: #fdfdfd;
    text-align: center;
    font-family: "Afacad Flux", serif;
    font-weight: normal;
    margin-top: 1rem;
}
.card h2{
    color: #fdfdfd;
    font-family: "Afacad Flux", serif;
}
.card{
    /* position: absolute; Ensures proper stacking */
    border-radius: 1rem;
    height: 400px;
    width: 320px;
    place-items: center;
    padding: 1rem;
    background-color: #4B4D96;
    transition: transform 0.3s ease, z-index 0s ease 0.3s;
}
.card:hover{
    /* color: #DFAEFF; */
    /* background-color: #f6f6f6; */
    border: solid 1px  #4B4D96;
    /* background-color: #a1a3da; */
    transform: scale(1.025)rotate(2deg);
    box-shadow: 0 0 15px #646cff50;
}
.card img{
    max-width: 295px;
    max-height: 200px;
    border-radius: .5rem;
}
.hideAll{
    height: auto;
    color: #232323;
    background-color: #dad4c6;
}
/* about sec */
.about{
    padding: 4rem;
    height: 110vh;
    width: 100vw;
    display: flex;
    flex-direction: row;
    align-items: center;
    background-color: #4B4D96;
    border-radius: 2rem;
}
.about h1{
    color: #ffffff;
}
.about img{
    max-width: 473px;
    max-height: 266px;
}
.about #my-frame{
    z-index: 2000;
}
.me-txt p{
    font-family: "Afacad Flux", serif;
    color: #fdfdfd;
    font-size: 1.2rem;
    width: 40rem;
    line-height: 1.5rem;
}
.me{
    /* background-color: #5a5454; */
    width: 60vw;
    padding: 4rem;
    text-align: left;
}
.me-photo{
    display: flex;
    flex-direction: row;
    /* place-content: center; */
}
.me-photo h1{
    margin-top: 12rem;
    margin-left: -10rem;
    font-size: 7rem;
    z-index: 200;
}
.skills{
    background-color: #a1a3da;
    border-radius: 2rem;
    /* padding: 4rem; */
    /* margin-left: 3rem; */
    height: 25rem;
    rotate: 5deg;
    width: 30vw;
    display: grid;
    place-content: center;
    place-items: center;
    box-shadow: 0 0 15px #646cff50;
}
.skills h2{
    color: #fdfdfd;
    font-family: "Afacad Flux", serif;
    font-weight: bold;
    margin-bottom: 2rem;
}
.skills p{
    color: #ffffff;
    text-align: left !important;
}
.item img{
    width: 76px;
    height: 76px
}
.icons{
    display: grid;
    width: 15rem;
    grid-template-columns: repeat(3, 1fr);
}

.resume{
    margin-top: 3rem;
}
.download{
    background-color: #fdfdfd;
    font-size: 1rem;
    padding: .8rem;
    color: #4B4D96;
    font-family: 'spicy rice';
    font-weight: 300;
    border-radius: 5px;
    text-decoration: none;
    transition: 0.5s;
}
.download:hover{
    /* transition: 0.5s; */
    /* transform: scale(1.2); */
    box-shadow: 2px 2px 10px #24253a;
    transform: scale(2);
    color: #4B4D96;
}

/*  about - end */
.backBtn{
    display: none;
}
/* #contact{
    color: #232323;
    padding: 10px;
    border-radius: 2px;
    height: auto;
} */
.sub-content1{
    width: 500px;
}
/* .show-webApp h1{
    color: #172621; 
    text-align: center; 
    font-weight: bolder; 
    font-size: 30px;
}
.webApp{
    display: flex;
    /* background-image: url(./assets/images/restDisplay.jpg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; 
    justify-content: space-between;
    margin-top: 0;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.webApp img{
    margin-top: -10px;
} */

.restOverview{
    height: auto;
    display: flex;
    align-items: center;
    flex-direction: column;
}
.restOverview img{
    width: 500px;
}
/* .contact-form p{
    color: #232323;
    font-weight: 500;
    font-size: 20px;
}
.contact-form input, textarea{
    border-radius: 15px;
    padding: 10px;
    width: 500px;
    background-color: #FCEBD2;
    border-style: solid;
    border-color: #232323;
}
.contact-form input[type=button]{
    width: auto;
    background-color: #232323;
    color: #dad4c6;
    font-weight: 800;
}
.form-elements{
    display: flex;
    justify-content: center;
}
.contact-form input[type=button]:hover{
    background-color: #FCEBD2;
    color: #232323;
} */

/* contact */
.contact{
    /* margin-top: 8rem; */
    margin-bottom: 5rem;
    display: grid;
    place-items: center;
    height: auto;
}
.connect{
    display:flex;
    margin: 1rem;
    gap: 1rem;
}
#linked{
    border: solid 2px #a1a3da;
    border-radius: 2rem;
    padding: 1rem;
}
#mail{
    border: solid 2px #a1a3da;
    border-radius: 2rem;
    padding: 1rem;
}
#linked a{
    text-decoration: none;
    color: #4B4D96;
}
#mail a{
    text-decoration: none;
    color: #4B4D96;
}
.form-elements{
    padding-top: 5rem;
    padding-bottom: 5rem;
    background-color: #a1a3da;
    color: #4B4D96;
    width: 90vw;
    border-radius: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-family: "Afacad Flux", serif;
}
.contact-form p{
    color: #4B4D96;
    font-weight: 500;
    font-size: 20px;
}
.contact-form input, textarea{
    border-radius: 15px;
    padding: 10px;
    width: 500px;
    background-color: #fdfdfd;
    border: none;
    margin: .2rem;
}
.contact-form input[type=button]{
    width: auto;
    background-color: #4B4D96;
    color: #fdfdfd;
    padding: .7rem;
    border: none;
    font-weight: 800;
    font-family: "Afacad Flux", serif;
}
.contact-form input[type=button]:hover{
    transform: scale(1.02);
    color: #4B4D96;
    background-color: #fdfdfd;
}
.c-head h1{
    /* margin-top: 12rem; */
    font-size: 5rem;
    z-index: 2000;
    margin-top: 8rem;
    margin-left: 0px;
    margin-bottom: 0px;
}
.pop-up{
    z-index: 2000;
    color: #4B4D96;
    background-color: #fdfdfd;
    text-align: center;
    height: 50vh;
    width: 50vw;
    border-radius: 20px;
    display: none;
    position: fixed;
    top: 25%;
    left: 25%;
    padding: 15px;
}
footer{
    text-align: center;
    height: 7rem;
    display: grid;
}
li{
    text-decoration: none;
}
.icon{
    width: 4rem;
    height: 4rem;
}

#scroll{
    text-align: center;
}
/* Mobile View */
@media only screen and (max-width: 600px) {
    body{
        width: 100vw;
    }
    main section{
        padding: 30px;
        height: 100vh;
        place-content: center;
    }
    p{
        font-size: 16px;
    }
    section h2{
        text-align: center;
    }
    h2{
        font-size: 15px;
    }
    .skills h2{
        font-size: 15px;
    }
    nav a{
        font-size: 16px;
    }
    .toggle img{
        width: 48px;
        height: 48px;
        position: fixed;
        top: 31px;
        left: 37px;
    }
    #menuToggle span {
        display: block;
        width: 20px;
        height: 2px;
        margin-bottom: 3px;
    }
    #home{
        height: 200vw;
        width: 100vw;
    }
    #home #intro{
        width: 15rem;
        margin-top: 10rem;
        /* margin-left: 2rem; */
    }
    h3{
        font-size: 15px;
    }
    #pieces{
        grid-gap: 45px;
        display: grid;
        grid-template-columns: 1fr;
        height: auto;
        font-weight: 500;
        font-size: 16px;
        margin-left: 5%;
        margin-right: 10%;
    }
    .card{
        width: 250px;
        height: 300px;
        padding: .5rem;
        display: flex;
        flex-direction: column;
    }
    .item-heading h2{
        font-size: 1.3rem;
        color: #fdfdfd;
        /* margin-top: .5rem; */
    }
    .item-heading p{
        margin-top: 0rem;
    }
    .card img{
        width: 230px;
        height: 150px;
    }
    /* ABOUT SECTION */
    .about{
        padding: 0rem;
        height: auto;
        width: 100vw;
        display: flex;
        flex-direction: column;
        align-items: center;
        background-color: #4B4D96;
        border-radius: 2rem;
       padding-bottom: 2rem;
    }
    .about img{
        max-width: 493px;
        max-height: 286px;
    }
    .me{
        /* background-color: #5a5454; */
        width: 100vw;
        padding: 2rem;
        text-align: left;
    }
    .me-photo{
        display: flex;
        flex-direction: column;
        /* place-content: center; */
        /* margin-top: 50rem; */
        z-index: 20000;
    }
    .me-photo h1{
        margin-top: -2rem;
        margin-left: 3rem;
        font-size: 4rem;
        z-index: 200;
    }
    .skills{
        height: 15rem;
        rotate: 5deg;
        width: 14rem;
        place-content: center;
        place-items: center;
        margin-top: .5rem;
    }
    .item img{
        width: 46px;
        height: 46px
    }
    .icons{
        display: grid;
        width: 11rem;
        grid-template-columns: repeat(3, 1fr);
    }
    .c-head h1{
        font-size: 3rem;
        text-align: center;
    }
    #contact {
        /* margin-top: 1rem; */
    }
    .contact-form p{
        color: #4B4D96;
        font-weight: 500;
        font-size: 18px;
    }
    .contact-form input, textarea{
        border-radius: 15px;
        padding: 10px;
        width: 250px;
        background-color: #fdfdfd;
        border-style: solid;
        border-color:#a1a2bd;
    }
    
}