.changa-plain {
  font-family: "Changa", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

body {
    margin: 0px;
    font-family: Changa;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 100vh;
}

h1 {
    font-size: 2.3rem;
}

p {
    font-size: 1.2rem;
}

a {
    color: inherit;
    text-decoration: none;
}

a:hover {
    opacity: 70%;
    color: rgb(161, 161, 255);
}

#header {
    background-color: black;
    color: white;
    padding: 10px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}

#header h1 {
    margin: 0;
    font-size: 48px;
}

#header ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    display: flex;
    flex-direction: row;
    gap: 40px;
    font-size: 40px;
}

#footer {
    margin-top: 5vh;
    background-color: black;
    color: white;
    padding: 10px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

#footer ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    display: flex;
    flex-direction: row;
    gap: 40px;
    font-size: 3vw;
    color: white;
}

#content {
    padding: 2vmin;
    display: flex;
    flex-direction: row;
    gap: 5vw;
}

#foto-pedro {
    height: 60vh;
    width: auto;
}

#content-about {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}

.cont-r {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 5vw;
}

.cont-r > div {
    width: 40vw;
}

.cont-l {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 5vw;
}

.cont-l > div {
    width: 40vw;
}

#foto-lab {
    width: 40vw;
}

#foto-arduino {
    height: 50vh;
}

.inside-link {
    color: #00e;
    text-decoration: underline;
}

#content-portfolio {
    padding: 0 10vw;
    display: flex;
    flex-direction: column;
    gap: 1vh;
}

/* --- Mobile Styles --- */
@media (max-width: 768px) {
    /* Stack the header items vertically */
    #header {
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }

    /* Shrink the navigation font slightly so it fits */
    #header ul {
        font-size: 24px;
        gap: 20px;
    }

    /* Stack all main content and about sections vertically */
    #content,
    .cont-r,
    .cont-l {
        flex-direction: column;
        text-align: center;
    }

    /* Make images and text containers take up most of the mobile screen */
    #foto-pedro,
    #foto-lab,
    #foto-arduino,
    .cont-r > div,
    .cont-l > div {
        width: 90vw;
        height: auto; /* Ensures the aspect ratio stays intact */
    }

    /* Adjust footer icon sizes so they are easy to tap */
    #footer ul {
        font-size: 8vw;
    }
}