@media (max-width: 1024px) {
    .container { padding: 0 25px; }
    .grid-split,
    .grid-split.reverse { grid-template-columns: 1fr; gap: 60px; text-align: center; }
    .grid-split.reverse { direction: ltr; }
    .grid-3,
    .faq-grid { grid-template-columns: 1fr; }
    .btn { margin: 0; }
    .hero p { margin: 0 auto 40px; }
    .footer-grid { grid-template-columns: 1fr 1fr; }

    .menu-toggle {
        display: block;
        position: absolute;
        right: 25px;
        top: 30px;
        font-size: 2.2rem;
        line-height: 1;
    }
    nav { justify-content: flex-start; }

    .nav-links {
        position: fixed;
        top: 100px;
        left: 0;
        width: 100%;
        height: calc(100vh - 100px);
        background: rgba(5, 7, 10, 0.98);
        flex-direction: column;
        justify-content: flex-start;
        gap: 0;
        padding: 20px 0;
        display: none;
        overflow-y: auto;
    }
    .nav-links.active { display: flex; }
    .nav-links > li { width: 100%; text-align: center; border-bottom: 1px solid rgba(255,255,255,0.05); }
    .nav-links > li > a:not(.btn) { padding: 25px; display: block; font-size: 1.1rem; }
    .mega-menu {
        position: relative;
        top: 0;
        left: 0;
        transform: none;
        width: 100%;
        grid-template-columns: 1fr;
        box-shadow: none;
        border: none;
        border-top: 1px solid rgba(249, 115, 22, 0.4);
        border-radius: 0;
        padding: 12px 0 20px;
        gap: 10px;
    }
    .mega-dropdown .caret { font-size: 0.92rem; }
    .mega-heading { font-size: 0.85rem; margin-bottom: 8px; }
    .mega-column { padding: 0 16px; }
    .mega-link-list { margin-bottom: 14px; }
    .mega-menu a { font-size: 0.96rem; padding: 11px 12px; }
    .mega-dropdown:hover .mega-menu { display: none; }
    .mega-dropdown.active .mega-menu { display: grid; }
}

@media (max-width: 768px) {
    .footer-grid { grid-template-columns: 1fr; text-align: center; }
}

@media (max-width: 900px) {
    body.hub-page .container,
    body.hub-page nav { padding: 0 24px; }
    body.hub-page .grid-3 { grid-template-columns: 1fr; }
    body.hub-page .nav-links { display: none; }
}

@media (max-width: 768px) {
    body { line-height: 1.65; }
    section { padding: 78px 0; }
    h1 { font-size: clamp(2rem, 9vw, 2.8rem); line-height: 1.12; }
    h2 { font-size: clamp(1.6rem, 7vw, 2.2rem); line-height: 1.2; }
    p { font-size: 1rem; }
    .copy-heavy p,
    .hero p { margin-bottom: 18px; }
    .card { padding: 24px; }
    .cta-row .btn,
    .cta-row-hero .btn { width: 100%; margin: 16px 0 0; text-align: center; }
    .cta-row,
    .cta-row-hero { gap: 10px; }
    .cta-band { padding: 54px 0; }
}

@media (max-width: 1024px) {
    body.home-page .hero {
        padding: 156px 0 108px;
    }

    body.home-page .hero-grid {
        grid-template-columns: 1fr;
        gap: 52px;
    }

    body.home-page .hero-copy {
        max-width: 760px;
        margin: 0 auto;
    }

    body.home-page .hero-brand {
        margin-left: auto;
        margin-right: auto;
    }

    body.home-page .hero p,
    body.home-page .section-intro {
        margin-left: auto;
        margin-right: auto;
    }

    body.home-page .cta-row {
        justify-content: center;
    }

    body.home-page .hero p {
        margin-bottom: 34px;
    }
}

@media (max-width: 768px) {
    body.home-page section {
        padding: 84px 0;
    }

    body.home-page .hero {
        padding: 132px 0 88px;
    }

    body.home-page .hero h1 {
        font-size: clamp(3.1rem, 12vw, 4.6rem);
        margin-bottom: 22px;
    }

    body.home-page .hero-brand {
        width: 100%;
        justify-content: center;
        flex-wrap: wrap;
        border-radius: 18px;
        gap: 10px;
        text-align: center;
        margin-bottom: 22px;
    }

    body.home-page .hero-brand-signal {
        border-left: none;
        border-top: 1px solid rgba(255, 255, 255, 0.22);
        padding-left: 0;
        padding-top: 8px;
        width: 100%;
    }

    body.home-page .hero p {
        margin-bottom: 28px;
    }

    body.home-page .float-tag {
        position: static;
        display: inline-block;
        margin: 6px 4px 0;
    }

    body.home-page .hero-image-container {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px;
    }
}

@media (max-width: 1024px) {
    body.home-page .grid-split,
    body.home-page .grid-split.reverse {
        grid-template-columns: 1fr;
        text-align: center;
        gap: 44px;
    }

    body.home-page .placeholder-hero {
        --placeholder-width: 620px;
        --placeholder-height: 620px;
    }

    body.home-page .placeholder-equity,
    body.home-page .placeholder-physics,
    body.home-page .placeholder-process {
        --placeholder-width: 920px;
        --placeholder-height: 520px;
    }
}

@media (max-width: 768px) {
    body.home-page .hero-image-container {
        min-height: 0;
    }

    body.home-page .homepage-visual-placeholder {
        border-radius: 14px;
        font-size: 0.82rem;
        min-height: 280px;
    }

    body.home-page .placeholder-hero {
        width: 100%;
        height: auto;
        aspect-ratio: 1 / 1;
        min-height: 320px;
    }

    body.home-page .placeholder-equity,
    body.home-page .placeholder-physics,
    body.home-page .placeholder-process {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 10;
        min-height: 260px;
    }

    body.home-page .cta-row,
    body.home-page .cta-row-hero {
        justify-content: center;
    }
}
