html, body {
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}
* { box-sizing: border-box; }

.quem-somos {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    gap: 32px;
    transform: translateX(-17px);
}

/* MOBILE */
@media (max-width: 1023px) {
    .quem-somos {
        transform: translateX(0);
    }
}

/* HERO */
.qs-hero {
    background:
        linear-gradient(rgba(0,0,0,.65), rgba(0,0,0,.65)),
        url("/images/fundo.jpeg") center center / cover no-repeat;
    background-color:#000;
    color:#fff;
    padding:36px 20px;
    border-radius:14px;
}
.qs-hero h1 { margin-bottom: 14px; }

/* SOBRE */
.qs-sobre-box {
    background: #f8fafc;
    border-left: 5px solid #2563eb;
    padding: 20px;
    border-radius: 12px;
}

/* SERVIÇOS */
.qs-servicos-title { margin-bottom: 20px; }

.qs-cards {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.qs-card {
    width: 100%;
    background: #fff;
    padding: 18px;
    border-radius: 12px;
    border-left: 5px solid;
}

.mma { border-left-color: #2563eb; }
.jj { border-left-color: #16a34a; }
.luta-livre     { border-left-color: #f97316; }
.muay-thai  { border-left-color: #057059; }
.kickboxing  { border-left-color: #c5d308; }
.karate       { border-left-color: #0f172a; }
.boxe       { border-left-color: #d60000; }

/* CLIENTES MOBILE */
.clientes-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    background: #f8fafc;
    padding: 16px;
    border-radius: 14px;
}
.clientes-grid img {
    height: 42px;
    width: 100%;
    object-fit: contain;
}

/* CLIENTES DESKTOP */
.clientes-box {
    display: none;
    background: #f8fafc;
    border-radius: 14px;
    padding: 20px;
    width: 100%;
}
.clientes-carousel {
    overflow: hidden;
    width: 100%;
    max-width: 100%;
}
.clientes-track {
    display: flex;
    gap: 40px;
    width: 200%;
    animation: slide 35s linear infinite;
}
.clientes-track img {
    height: 56px;
    flex-shrink: 0;
}

/* DESKTOP */
@media (min-width: 1024px) {

    .qs-hero { padding: 60px 40px; }

    .qs-cards {
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 20px;
    }

    .clientes-grid { display: none; }
    .clientes-box  { display: block; }

    @keyframes slide {
        from { transform: translateX(0); }
        to   { transform: translateX(-50%); }
    }
}

/* DESKTOP */
@media (min-width:1024px){

    .qs-cards{
        display:grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap:20px;
    }
}

/* MOBILE – 1 CARD POR LINHA */
@media (max-width:1023px){
    .qs-cards{
        display:flex;
        flex-direction:column;
        gap:14px;
    }
}