@media (max-width: 1024px) {
    .sticky {
        position: static !important;
        top: auto !important;
    }
}

@media (max-width: 768px) {
    .h-screen {
        min-height: 100svh;
        height: auto !important;
        padding-top: 6rem;
        padding-bottom: 4rem;
    }

    nav {
        padding-top: 0.75rem !important;
        padding-bottom: 0.75rem !important;
    }

    nav img {
        height: 56px !important;
        max-width: 70vw;
    }

    .scroll-indicator {
        display: none !important;
    }

    .hero-software h1,
    .h-screen h1 {
        font-size: clamp(2.1rem, 7vw, 3.2rem) !important;
        line-height: 1.15 !important;
    }

    .hero-software p,
    .h-screen p {
        font-size: 1rem !important;
    }

    .hero-content-wrapper img {
        height: 180px !important;
        max-width: 90vw;
    }

    #nav-search-panel {
        width: min(90vw, 20rem);
    }

    .tab-btn {
        font-size: 0.75rem !important;
        letter-spacing: 0.12em !important;
    }

    .tab-btn.active {
        transform: none !important;
    }

    .tab-pane img {
        width: 100% !important;
        height: auto !important;
    }

    [style*="width: 400px"] {
        width: 100% !important;
        max-width: 100% !important;
    }

    [style*="height: 300px"] {
        height: auto !important;
    }

    .map-iframe-container {
        height: 320px !important;
    }

    .brand-item {
        min-width: 120px;
        min-height: 72px;
    }

    .brand-logo {
        max-height: 40px;
    }
}

@media (max-width: 480px) {
    .hero-software h1,
    .h-screen h1 {
        font-size: clamp(1.9rem, 8vw, 2.8rem) !important;
    }

    .contact-cta-card {
        padding: 1.5rem !important;
    }
}
