/* ===============================
   MOBILE RESPONSIVE CSS
   Covers: 320px → 768px
================================= */

/* Base Mobile Reset */
@media (max-width: 768px) {

    body {
        font-size: 14px;
    }

    section {
        padding: 60px 20px;
    }

    /* NAV */
    nav {
        padding: 15px;
    }

    .hamburger {
        font-size: 24px;
    }

    .menu {
        width: 100%;
        right: -100%;
    }

    .menu.open {
        right: 0;
    }

    /* HERO */
    .hero {
        height: auto;
        padding: 120px 20px 60px;
        background-position: center;
    }

    .hero-content {
        max-width: 100%;
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }

    .hero h1 {
        font-size: 28px;
        line-height: 1.3;
    }

    .hero h2 {
        font-size: 18px;
    }

    .contact-info {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    /* BUTTON */
    .resume-btn {
        padding: 10px 20px;
        font-size: 14px;
    }

    /* EXPERIENCE */
    .experience-metrics {
        justify-content: center;
    }

    .metric {
        width: 45%;
    }

    .circle {
        width: 80px;
        height: 80px;
        font-size: 22px;
    }

    .experience-content {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    /* SKILLS */
    .skill-tags span {
        font-size: 12px;
        padding: 6px 10px;
    }

    /* GRID */
    .engagement-grid {
        grid-template-columns: 1fr;
    }

    /* CARDS */
    .engagement-card {
        padding: 20px;
    }

    .engagement-card h3 {
        font-size: 18px;
    }

    .cs-link {
        font-size: 20px;
    }

    /* ARCHITECTURE */
    .architecture-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    /* STRENGTHS */
    .strengths-grid {
        grid-template-columns: 1fr;
    }

    /* CAREER */
    .career-timeline {
        flex-direction: column;
        gap: 40px;
    }

    .career-timeline::before {
        display: none;
    }

    .career-info {
        position: static;
        transform: none;
        width: 100%;
        margin-top: 10px;
    }

}


/* ===============================
   SMALL MOBILE (320px - 480px)
================================= */

@media (max-width: 480px) {

    .hero h1 {
        font-size: 24px;
    }

    .hero h2 {
        font-size: 16px;
    }

    .metric {
        width: 100%;
    }

    .circle {
        width: 70px;
        height: 70px;
        font-size: 18px;
    }

    .section-title {
        font-size: 24px;
    }

    .section-desc {
        font-size: 13px;
    }

}


/* ===============================
   LARGE MOBILE (481px - 768px)
================================= */

@media (min-width: 481px) and (max-width: 768px) {

    .hero h1 {
        font-size: 30px;
    }

    .hero h2 {
        font-size: 18px;
    }

    .section-title {
        font-size: 28px;
    }

}