@media (max-width: 1200px) {
    .container {
        max-width: 1000px;
    }

    .home-content h2 {
        font-size: 3rem;
    }
}

@media (max-width: 992px) {
    .container {
        max-width: 90%;
    }

    .callsign p {
        font-size: 0.58rem;
    }

    #home .container {
        flex-direction: column;
        text-align: center;
    }

    .home-content {
        order: 2;
    }

    .profile-picture {
        order: 1;
    }

    .cta-buttons {
        justify-content: center;
    }

    .about-content {
        flex-direction: column;
    }

    .code-snippet {
        margin-top: var(--space-lg);
    }

    .contact-content {
        flex-direction: column;
    }

    .contact-info {
        margin-bottom: var(--space-lg);
    }
}

@media (max-width: 768px) {
    html {
        font-size: 14px;
    }

    header {
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    header::after {
        content: "";

        position: absolute;

        top: 0;
        left: 0;
        right: 0;
        bottom: 0;

        backdrop-filter: blur(var(--blur-md));
        -webkit-backdrop-filter: blur(var(--blur-md));

        z-index: -1;
    }

    .callsign p {
        font-size: 0.8rem;
    }

    nav {
        position: absolute;

        top: calc(100% + 10px);
        left: 50%;
        width: calc(100% - 20px);

        max-height: 0;

        background-color: var(--background-secondary);

        backdrop-filter: blur(var(--blur-md));
        -webkit-backdrop-filter: blur(var(--blur-md));

        border-radius: var(--radius-lg);

        box-shadow: 0 5px 10px var(--shadow);

        overflow: hidden;
        transition: max-height var(--transition-normal);

        z-index: 1000;

        transform: translateX(-50%);
    }

    nav.active {
        max-height: 300px;
    }

    nav ul {
        padding: var(--space-md);
        flex-direction: column;
    }

    nav ul li {
        margin-left: var(--space-sm);
    }

    .theme-toggle {
        margin-left: auto;
        margin-right: var(--space-lg);
    }

    .mobile-menu-toggle {
        display: flex;
    }

    .project-grid {
        grid-template-columns: 1fr;
    }

    .timeline::before {
        left: 20px;
    }

    .timeline-dot {
        left: 10px;
    }

    .education h3 {
        text-align: left;
    }

    .footer-content {
        flex-direction: column;
        align-items: flex-start;
    }

    .footer-links {
        margin-top: var(--space-sm);
        flex-wrap: wrap;
    }
}

/* Mobile Screens (up to 576px) */
@media (max-width: 576px) {
    .home-content h2 {
        font-size: 2.5rem;
    }

    .cta-buttons {
        flex-direction: column;
        gap: var(--space-sm);
    }

    .section-title {
        font-size: 2rem;
    }

    .skills {
        flex-direction: column;
    }

    .social-links {
        justify-content: space-around;
    }
}

/* Mobile Menu Animation */
.mobile-menu-toggle.active span:nth-child(1) {
    transform: translateY(9px) rotate(45deg);
}

.mobile-menu-toggle.active span:nth-child(2) {
    opacity: 0;
}

.mobile-menu-toggle.active span:nth-child(3) {
    transform: translateY(-9px) rotate(-45deg);
}

/* Print styles (for resumes, etc.) */
@media print {
    header, footer, .contact-form, .hero, .projects, .mobile-menu-toggle, .theme-toggle {
        display: none;
    }

    body {
        font-size: 12pt;
        background-color: white !important;
        color: black !important;
        background-image: none !important;
    }

    .container {
        max-width: 100%;
        padding: 0;
        margin: 0;
    }

    .about, .experience {
        padding: 0;
        background-color: white !important;
    }

    .about::before,
    .experience::before {
        display: none;
    }

    .about-content, .timeline, .education {
        page-break-inside: avoid;
    }

    .timeline-content,
    .education-item {
        background-color: white !important;
        box-shadow: none;
        border: 1px solid #ddd;
    }

    a {
        text-decoration: none;
        color: black !important;
    }

    .section-title::after {
        display: none;
    }
}
