/* Mobile view matches desktop view aesthetic but with improved readability */
@media screen and (max-width: 768px) {
    html {
        /* Increase base font size for mobile readability */
        font-size: 16px !important;
    }

    body {
        /* Ensure consistent line height for large blocks of text */
        line-height: 1.5;
    }

    .top-nav {
        /* Ensure nav stays usable on small screens */
        flex-wrap: wrap;
        gap: 10px;
        padding: 15px;
    }

    .top-nav a {
        /* Larger touch targets and text for nav */
        margin: 5px 10px;
        font-size: 1.1rem;
    }

    .socialLink h3 {
        font-size: 1rem;
    }

    .socialLink > span {
        font-size: 0.9rem;
    }

    .social-frame {
        /* Stack socials on very small screens */
        grid-template-columns: 1fr;
    }

    .info img {
        float: none !important;
        display: block !important;
        margin: 0 auto 1.5rem auto !important;
        width: 100% !important;
        max-width: 300px !important;
        height: auto !important;
    }

    .info p {
        font-size: 1.1rem;
        text-align: justify;
    }

    .mainInfo h1 {
        font-size: 2rem;
    }

    h2 {
        font-size: 1.6rem;
    }

    .firstAbout {
        flex-direction: column;
        text-align: center;
        margin-left: 0 !important;
    }

    #pfp {
        margin-right: 0;
        margin-bottom: 1rem;
        width: 120px;
    }
}