@media (max-width: 767px) {
    header {
        padding: 1rem 1rem;
        display: flex;
    }

    header.header--scrolled {
        gap: 1em;
    }

    nav {
        display: none;
    }

    .btn--contact {
        padding: 0.6rem 1.5rem;
    }

    .content {
        margin-top: 5vh;
        margin-left: auto;
        margin-right: auto;
        align-items: center;
    }

    .robot--3d {
        display: none;
    }

    .content h1 {
        font-size: 3rem;
        text-align: center;
    }

    .description {
        font-size: 0.9rem;
        text-align: center;
    }

    .scroll--down-indicator {
        display: none;
    }

    .btns--container {
        flex-direction: column;
        align-items: center;
        width: 100%;
        gap: 30px;
    }

    .btn--get-projects span,
    .btn--get-contact {
        padding: 1rem 9rem;
        font-size: 1.5rem;
    }

    .projects--marquee-container {
        margin-top: 0;
        margin-bottom: 1em;
    }

    .btn--get-projects {
        width: auto;
    }

    .about--text-section h2 {
        font-size: 1.7rem;
    }

    #projects {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 0 1em;
        margin: 0 auto;
        width: 100%;
    }

    .projects--header {
        margin-top: 1em;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .projects--header-left {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        width: 100%;
        max-width: 600px;
    }

    .projects--header-left h2 {
        font-size: 3rem;
        margin-bottom: 1rem;
    }

    .projects--header-left p {
        font-size: 0.9rem;
        margin-bottom: 4rem;
        padding: 0 2em;
    }

    .project--image-container {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 1.5rem;
        width: 100%;
    }

    .project--visual-item {
        width: 100%;
        max-width: 500px;
    }

    .project--image-container img {
        width: 100%;
        height: 400px;
        border-radius: 40px;
        object-fit: cover;
    }

    .projects--header-right {
        display: none;
    }

    .project--visual-info {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0.5rem;
        margin: 1em 0 0 0;
    }

    .project--slogan {
        display: block;
        text-align: center;
        margin: 0;
    }

    .project--pills {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0.5rem;
        margin-top: -1em;
    }

    .project--pills span {
        margin-bottom: 0;
        margin-top: 0;
        font-size: 0.7rem;
        padding: 0.2rem 0.5rem;
    }

    .faq--header {
        margin-bottom: 1rem;
    }

    .faq--header h2 {
        font-size: 2.7em;
    }

    .faq--header p {
        font-size: 0.8em;
        margin-bottom: 0;
    }

    .contact--content-wrapper {
        display: block;
        gap: 20px;
    }

    .cubic--3d {
        display: none;
    }

    .contact--container {
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: 0 1em;
    }

    .contact--container h4 {
        font-size: 2.8rem;
        text-align: center;
        line-height: 1.2;
    }

    .contact--email-link {
        display: flex;
        justify-content: center;
        font-size: 1.7rem;
    }

    .contact--container p {
        text-align: center;
        font-size: 1rem;
    }

    .contact--form {
        grid-template-columns: 1fr;
        gap: 20px;
        width: 100%;
    }

    .form--group-full {
        grid-column: auto;
    }

    .contact--form-submit {
        justify-content: center;
        margin-bottom: 5vh;
    }

    .socials--medias-container {
        width: 100%;
        margin: 60px 0 60px 0;
        padding: 0 1em;
    }

    .faq--header {
        margin-top: 5vh;
    }

    .faq--section {
        padding-left: 0;
        padding-right: 0;
    }

    .faq--answer {
        padding: 0 3rem;
        transition: max-height 0.5s ease-out, padding 0.5s ease-out;
        font-family: var(--font-main);
    }

    .home--marquee span {
        font-size: 3.5rem;
    }

    .footer {
        padding: 60px 20px 30px;
    }

    .footer--top {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 40px;
    }

    .footer--nav {
        flex-direction: column;
        gap: 30px;
    }

    .footer--bottom p {
        flex-direction: column;
        gap: 10px;
        text-align: center;
        font-size: 10px;
    }

    .project--detail-main {
        padding: 10vh 20px 5vh;
    }

    .back--to-home-btn {
        top: 20px;
        left: 50%;
        transform: translateX(-50vw) translateX(25px);
    }

    .project--intro-grid {
        grid-template-columns: 1fr;
        gap: 2em;
    }

    .project--intro-text h1 {
        font-size: clamp(2.5rem, 10vw, 3.5rem);
    }

    .project--intro-text p {
        font-size: 1rem;
    }

    .container--project-detail {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
    }

    .container--project-detail .home--btn {
        grid-column: 1;
        justify-self: start;
        width: auto;
        max-width: none;
        justify-content: flex-start;
        padding: 12px 24px 12px 0;
        gap: 12px;
    }

    .project--external-link {
        float: none;
    }

    .project--external-link {
        margin-bottom: 2em;
    }

    .container--project-detail>h1 {
        font-size: clamp(2rem, 8vw, 2.5rem);
    }

    .container--project-detail>p {
        font-size: 1rem;
        max-width: 100%;
    }

    .project--detail-info {
        display: flex;
        flex-direction: column;
        gap: 1.5em;
        margin: 2em 0;
        padding: 1.5em 0;
        border-top: 1px solid rgba(255, 255, 255, 0.1);
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }

    .project--detail-pills {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0.5rem;
    }

    .project--technologies ul {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0.5rem;
    }

    .challenge--label,
    .solution--label {
        font-size: clamp(2rem, 8vw, 2.5rem);
        margin-top: 1em;
    }

    .challenge--description,
    .solution--description {
        font-size: 1.1rem;
        line-height: 1.6;
        max-width: 100%;
        margin-top: 1em;
        margin-bottom: 2em;
    }

    @media (max-width: 375px) {
        .home--container {
            padding: 0 5%;
            justify-content: flex-start;
            height: 100vh;
        }

        .home--content h1 {
            font-size: 1.7rem;
        }

        .home--content p {
            font-size: 0.7rem;
        }

        .projects--header h2,
        .contact-container h4 {
            font-size: 2.2rem;
        }

        .project-slide {
            max-width: 260px;
        }

        .card-project__one,
        .card-project__two {
            min-height: 400px;
        }

        .home--btn {
            width: 70%;
            max-width: 280px;
            margin-top: 0;
            justify-content: center;
        }

        .menu-content {
            padding-top: 15%;
        }

        .menu ul li a {
            font-size: clamp(1rem, 8vw, 1.3rem);
        }

        .internal-text__menu {
            position: static;
            transform: none;
            width: 100%;
            font-size: 0.7rem;
            margin-top: auto;
            text-align: center;
        }
    }
}