@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+JP&family=Inter+Tight:ital,wght@0,100..900;1,100..900&display=swap');

        a, .transition {
            transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, opacity 0.2s ease;
        }








        body {
            margin: 0;
            font-family: "Inter Tight", Arial, sans-serif;
            font-weight: 400;
            background: #000;
            color: #fff;
            font-size: 24px;
            line-height: 1.38;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            text-rendering: optimizeLegibility;
            padding-bottom: 200px;
        }


        body#jp {
            font-family: "IBM Plex Sans JP", Arial, sans-serif;
        }

        main {
            min-width: 280px;
            max-width: 1360px;
            margin: 0 auto;           /* center horizontally */
            min-height: 100vh;        /* full viewport height */
            padding: 50px 30px;
            box-sizing: border-box;
        }

        .text-link {
            border-bottom: 1px solid rgba(255, 255, 255, .3);
            color: #fff;
            text-decoration: none;
            opacity: 0.7;
        }

        .text-link:hover {
            opacity: 1;
        }

        #logo img {
            width: 251px;
        }

        #links {
            font-size: 20px;
        }


        span {
            color: #fff;
        }

        #logo:hover {
            opacity: 0.7;
        }

        nav {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
    }

        nav ul {
        display: flex;
        list-style: none;
        gap: 50px;
        margin: 0;
        padding: 0;
    }


    .divider div {
        width: 100%;
        height: 1px;
        background: rgba(255, 255, 255, .1);
        display: block;
        margin: 100px 0;
    }



        /* Intro section */
    .intro, .portfolio {
        max-width: 1300px;
        min-width: 280px;
        margin: 40px auto;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        gap: 40px;
        justify-content: space-between;
    }

    .intro-text {
        flex: 1 1 300px;
        min-width: 280px;
        max-width: 675px;
    }

    .profile {
        display: flex;
        align-items: center;
        gap: 27px;
        margin-top: 30px;
    }

    .profile img {
        width: 80px;
        height: 80px;
    }

    /* Competencies */
    .competencies {
        min-width: 280px;
        flex: 0 0 auto;   /* size based on content */
        margin-left: auto; /* pushes it to the right */
        width: 380px;
    }

    body#jp .competencies {
        min-width: 280px;
        flex: 0 0 auto;   /* size based on content */
        margin-left: auto; /* pushes it to the right */
        width: 390px;
    }

    ul {
        list-style: none;
        padding-left: 0;
    }





    /* Portfolio */
    .pre-portfolio {
        padding-bottom: 100px;
        opacity: 0.6;
    }

    h2 {
        font-size: 40px;
        font-weight: 400;
        margin-top: 0;
    }

    .partner-logo {
        min-width: 280px;
        flex: 0 0 auto;   /* size based on content */
        margin-left: auto; /* pushes it to the right */
        width: 380px;
    }

    .partner-logo img {
        width: 250px;
    }

    .project-visual {
        display: block;
        width: 100%;
    }


    .project-visual img {
        width: 100%;
        max-width: 1300px;
    }


    .project-mobile {
        display: none;
    }

    .slash {
        opacity: 0.2;
        padding-right: 8px;
    }







@media (max-width: 794px) {


    .project-mobile {
        display: block;
    }

    .project-desktop {
        display: none;
    }


    .partner-logo {
        width: 100%;
        padding: 10px 0 50px;
    }

    .competencies {
        margin-left: 0;
    }

    #links {
        display: block;
    }

    #links ul {
        padding-top: 30px;
    }



            nav ul {
        display: block;
    }
            nav ul li {
        padding-bottom: 10px;
    }


}