body {
    margin: 0;
    padding: 0;
}
.header {
    margin-bottom: 5%;
}

.container {
    margin-left: 1.2%;
    width: auto;
  }
 
.topnav {
    margin-left: 2%;
    display: flex;
    align-items: center;
    gap: 1.5rem;
}
h1 {
    font-family: "raleway", sans-serif;
    color: #4C5760;
}
.topnav ul {
    display: flex;
    gap: 1.5rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

  .topnav a{
    float: left;
    color: #4C5760;
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
    font-size: 17px;
    font-family: "roboto", sans-serif;
    font-weight: 400;
    font-style: normal;
  }
  
  .topnav li a:hover {
    color: #FFFAD3;
    background-color: #C6E2E9;
    border-radius: 1em;
  }

  ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
}
.bio {
    font-family: "raleway", sans-serif;
    font-weight: 350;
    font-style: normal;
    text-align: center;
    margin-top: 5%;
}
.mainbio {
    display: grid;
    grid-template-columns: repeat(2, 2fr);
    padding-bottom: 5%;
    margin-top: 5%;
} 

h2 {
    font-family: "raleway", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 4em;
}
.mainbio p{
   font-size: 2em;
    text-align: center;
    margin-right: 10%;
    margin-left: 10%;
    color: #4C5760;
    grid-column: 2/span 1;
}
.mainbio img{
    width: 65%;
    justify-items: center;
    margin: auto;
    grid-column: 1/span 1;
}
.button {
    padding: 2%;
    width: 15%;
    margin: auto;
    margin-top: 0;
    border-radius: 1em;
    background-color: #C6E2E9;
    font-size: 1em;
    color: #4C5760;
    text-decoration: none;
    grid-column: 2/span 1;
}
.button:hover {
    color: #FFFAD3;
}
p {
    font-family: "roboto", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.projects p{
    font-size: 1.25em;
    color: #66635B;
}
.p1 {
    margin-bottom: 15%;
   
}
.p1 img {
    border: 1em solid #ffffff;
    border-bottom: 4em;
   
}
.pp1 img:hover {
    opacity: .3;
}
.p1 p{
    margin-top: -2%;
    margin-bottom: 5%;
    padding-top: 5%;
    padding-left: 5%;
    padding-bottom: 2.5%;
    background-color: #ffffff;
    box-shadow: 0 1.5rem 3rem -0.75rem hsla(0, 0%, 0%, 0.25);
}
.p1 p a:hover {
    opacity: .3;
}
.p2 {
    margin-bottom: 15%;
  
}
.p2 img {
    border: 1em solid #ffffff;
    border-bottom: 4em;
}
.pp2 img:hover {
    opacity: .3;
}
.p2 p {
    margin-top: -2%;
    margin-bottom: 5%;
    padding-top: 5%;
    padding-left: 5%;
    padding-bottom: 2.5%;
    background-color: #ffffff;
    box-shadow: 0 1.5rem 3rem -0.75rem hsla(0, 0%, 0%, 0.25);
}
.p3 {
    margin-bottom: 15%;
    
}
.p3 img {
    border: 1em solid #ffffff;
    border-bottom: 4em;
}
.pp3 img:hover {
    opacity: .3;
}
.p3 p{
    margin-top: -2%;
    margin-bottom: 5%;
    padding-top: 5%;
    padding-left: 5%;
    padding-bottom: 2.5%;
    background-color: #ffffff;
    box-shadow: 0 1.5rem 3rem -0.75rem hsla(0, 0%, 0%, 0.25);
}
.p4 {
    margin-bottom: 15%;
}
.p4 img {
    border: 1em solid #ffffff;
    border-bottom: 4em;
}
.pp4 img:hover {
    opacity: .3;
}
.p4 p {
    margin-top: -2%;
    margin-bottom: 5%;
    padding-top: 5%;
    padding-left: 5%;
    padding-bottom: 2.5%;
    background-color: #ffffff;
    box-shadow: 0 1.5rem 3rem -0.75rem hsla(0, 0%, 0%, 0.25);
}
.p5 {
    margin-bottom: 15%;
}
.p5 img {
    border: 1em solid #ffffff;
    border-bottom: 4em;
}
.pp5 img:hover {
    opacity: .3;
}
.p5 p{
    margin-top: -2%;
    margin-bottom: 5%;
    padding-top: 5%;
    padding-left: 5%;
    padding-bottom: 2.5%;
    background-color: #ffffff;
    box-shadow: 0 1.5rem 3rem -0.75rem hsla(0, 0%, 0%, 0.25);
}
.p6 {
    margin-bottom: 15%;
}
.p6 img {
    border: 1em solid #ffffff;
    border-bottom: 4em;
}
.pp6 img:hover {
    opacity: .3;
}
.p6 p {
    margin-top: -2%;
    margin-bottom: 5%;
    padding-top: 5%;
    padding-left: 5%;
    padding-bottom: 2.5%;
    background-color: #ffffff;
    box-shadow: 0 1.5rem 3rem -0.75rem hsla(0, 0%, 0%, 0.25);
}
.contact {
    margin: 3em;
}
.contact h2 {
    padding-bottom: -2em;
    margin-bottom: 2%;
    color: #C6E2E9;
}
.contact p {
    color: #4C5760;
    padding-bottom: .25em;
}
footer p{
    font-size: 1em;
    text-align: center;
    margin: auto;
    padding-bottom: 1%;
    color: #C6E2E9;
}
.heading {
    font-family: "raleway", sans-serif;
    font-weight: 350;
    font-style: normal;
    text-align: center;
    color: #4C5760;
    margin-top: -4%;
}
.pcontainer {
    padding: 1rem;
    Margin-top: -2%;
}
.slider-wrapper {
    position: relative;
    max-width: 48rem;
    margin: 0 auto;
}
.slider {
    display: flex;
    aspect-ratio: 3 / 2;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    box-shadow: 0 1.5rem 3rem -0.75rem hsla(0, 0%, 0%, 0.25);
    border-radius: 1rem;
    -webkit-overflow-scrolling: touch;
}
.slider::-webkit-scrollbar {
    display: none; 
}
.slider img {
    flex: 1 0 100%;
    scroll-snap-align: start;
    object-fit: cover;
}
.slider-nav {
    display: flex;
    column-gap: 1rem;
    position: absolute;
    bottom: 1.25rem;
    left: 50%;
    transform: translate(-50%);
    z-index: 1;
}
.slider-nav a{
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    background-color: #4C5760;
    opacity: 0.75;
    transition: opacity ease 250ms;
}
.slider-nav a:hover {
    opacity: 1;
}
.description h3 {
    font-size: 1.75em;
    padding: 1%;
    margin-left: 15%;
    margin-right: 15%;
    text-align: center;
    background-color: #FFFAD3;
    border-radius: 1em;
    color: #66635B;
    font-family: "raleway", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.description p {
    margin-left: 10%;
    margin-right: 10%;
    font-size: 1.5em;
    color: #4C5760;
    text-align: center;
}
.projectlink {
    text-decoration: none;
    color: inherit;
    display: block;
}

.projectlink:hover img,
.projectlink:hover p {
    opacity: 0.3;
    transition: opacity 0.3s ease;
}

/* --- CLEAN RESPONSIVE PROJECT GRID --- */

.projects h2 {
    grid-column: 1 / -1;
    text-align: center;
    color: #4C5760;
    margin-bottom: 1rem;
}

.project {
    width: 100%;
}

.projectlink {
    display: block;
    text-decoration: none;
    color: inherit;
    transition: opacity 0.3s ease;
}

.projectlink:hover img,
.projectlink:hover p {
    opacity: 0.3;
}

.project img {
    width: 100%;
    display: block;
    border: 1em solid #fff;
    border-bottom: 4em solid #fff;
    box-shadow: 0 1.5rem 3rem -0.75rem rgba(0,0,0,0.25);
}

.project p {
    margin-top: -2%;
    margin-bottom: 5%;
    padding: 5% 5% 2.5% 5%;
    background-color: #fff;
    box-shadow: 0 1.5rem 3rem -0.75rem rgba(0,0,0,0.25);
    text-align: left;
    font-size: 1.25em;
    color: #66635B;
}
.projects {
    background-color: #FFFAD3;
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;

    
    padding: 3rem 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 3rem;
    justify-items: center;
}

.projects h2 {
    grid-column: 1 / -1;
    color: #4C5760;
    margin-top: 0;
}


/* ------ RESPONSIVE ------ */

@media (max-width: 1200px) {
    .projects {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 800px) {
    .projects {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 800px) {
    .mainbio {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-top: 2rem;
        gap: 2rem;
    }

    .mainbio img {
        width: 80%;
        margin: 0 auto;
        order: -1; /* Ensures the image appears ABOVE the paragraph */
    }

    .mainbio p {
        margin: 0 5%;
        font-size: 1.5em;
        order: 2;
    }

    .button {
        width: 50%;
        margin-top: 1rem;
        order: 3;
    }
}





