@media only screen and (max-width: 960px) {

    .header .container-small{
        height: 60px;
    }
    .header-logo a img:first-child{
        display: none;
    }
    .header-logo a img:last-child{
        display: block;
    }
    .section-subheader h1{
        max-width: 100%;
        text-align: center;
        font-size: 1rem;
        padding-bottom:0;
        font-weight: 500;
        border-bottom: none;
    }
    .section-subheader h1 span{
        color: var(--light-one);
    }
    .card{
        flex: 1 1 100%;
    }

    /* HEADER MOBILE */
    .header .container{
        gap: 1rem;
    }
    .header-toggle{
        display: flex;
    }
    .header.is-open .header-toggle span:nth-child(1){
        transform: translateY(7px) rotate(45deg);
    }
    .header.is-open .header-toggle span:nth-child(2){
        opacity: 0;
    }
    .header.is-open .header-toggle span:nth-child(3){
        transform: translateY(-7px) rotate(-45deg);
    }
    .header-collapse{
        display: block;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background: var(--light-2);
        border-bottom: 1px solid var(--light-3);
        box-shadow: 0 8px 16px rgba(6, 8, 22, .08);
        overflow: hidden;
        max-height: 0;
        transition: max-height .3s ease;
    }
    .header.is-open .header-collapse{
        max-height: 22rem;
    }

    /* Menu: largura total, cada link uma linha cheia */
    .header-menu{
        width: 100%;
    }
    .header-menu ul{
        flex-direction: column;
        align-items: stretch;
        gap: 0;
    }
    .header-menu ul li a{
        display: block;
        width: 100%;
        box-sizing: border-box;
        padding: .9rem 1.25rem;
        border-top: 1px solid var(--light-3);
    }

    /* Botões: largura total, empilhados */
    .header-buttons{
        width: 100%;
        box-sizing: border-box;
        flex-direction: column;
        align-items: stretch;
        gap: .6rem;
        padding: 1rem 1.25rem;
    }
    .header-buttons a{
        box-sizing: border-box;
        justify-content: center;
        padding: .6rem 0;
    }

    /* HERO / BUSCA MOBILE */
    .search-box{
        padding: 1rem;
    }
    .search-filters{
        flex-direction: column;
        align-items: stretch;
    }
    .search-filters select{
        flex: none;
        width: 100%;
    }
    .search-btn{
        width: 100%;
    }

    /* CARDS - EMPRESAS MOBILE */
    .cards{
        column-gap: 1rem;
    }
    .company-card{
        flex: 1 1 280px;
        max-width: none;
    }

}
